The present invention relates to digital design tools, and more particularly to a microprocessor system debug tool which controls a target microprocessor through its read only memory (ROM).
To analyze a microprocessor system a logic analyzer is connected to the microprocessor bus. All input and output from the microprocessor may be decoded by the logic analyzer so that the user has a listing of the program being executed. This is a passive system.
Alternatively an emulator may be used to replace the microprocessor in developing software for the microprocessor. The emulator performs all the functions of the microprocessor to exercise the system, and the resulting software may then be ported into the microprocessor with the expectation that the system will function in the same manner. However, as the microprocessors get more and more complicated it is geometrically more and more difficult and expensive to develop an emulator for each type of microprocessor since the emulator is unique to the particular type of microprocessor it is emulating.
Another form of emulator is a ROM emulator where, rather than replacing the microprocessor with an emulator, a system ROM is replaced by the emulator. The ROM emulator interacts with the system by providing a mechanism by which the user data supplied by a ROM may be modified without requiring the user to physically reprogram and replace the ROM. It has no capabilities for stopping the microprocessor, or for providing the user with read/write operations with the system memories and registers.
What is desired is a microprocessor debug tool which combines the features of the logic analyzer in decoding information from the microprocessor bus with the emulsion functions of stopping the microprocessor and performing read/write operations plus the flexibility of being readily adaptable for any type of microprocessor.